Modern data centers and online computing resources offer a consolidated environment for maintaining, and upgrading hardware and software, while providing convenient remote access from any location that has network access. Data centers may be used to provide so-called “cloud computing” resources for enterprises and to the public at large. Many cloud computing resources can be accessed by users, regardless of their physical location, using a relatively straightforward and easy-to-use web-browser. Cloud computing enables users to always have access to the most recent resources (e.g., the most recent software applications), without having to constantly update and maintain their own systems.
It is common practice in the cloud computing environment that the users are not given direct access to software applications from their desktop machine. Instead, the user connects to an intermediary server (a so-called “virtual server”). The virtual server handles connections with the users by establishing remote sessions which provide a so-called “virtual machine” with a “virtual desktop” for the user. The virtual server also provides the user with access to backend servers where the software applications are stored and executed (also referred to as the “application server”).
Users of the remote session can access software applications on the backend servers via the virtual server using their virtual desktop. When the user makes a request from their virtual desktop to access a software application on the backend servers, the request is handled by the virtual server. As such, the backend server does not know the identity of the actual user requesting access to the software application.